package com.ruizhong.centercontroll.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient;
import java.util.List;
import java.util.Map;

@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_slider")
@XmlRootElement
public class TSlider {
    @XmlTransient
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    @XmlTransient
    private Integer pageId;
    private Double value;
    private Double w;
    private Double h;
    private Double x;
    private Double y;
    private Integer z;
    private String lastSlideName;
    private Integer keepLastData;
    private String sliderVariable;
    private Integer verticalData;
    private String displayVariableName;
    private String displayVariableValue;
    private Integer conditionShowData;
    private Integer min;
    private Integer max;
    private Double rotate;
    @XmlTransient
    @TableField(exist = false)
    private Boolean conditionShow;

    @XmlTransient
    @TableField(exist = false)
    private Boolean vertical;

    @XmlTransient
    @TableField(exist = false)
    private Boolean keepLast;

    @XmlTransient
    @TableField(exist = false)
    private String type = "SLIDER";

    @XmlTransient
    @TableField(exist = false)
    private List<TCommand> slideCommandList;

    @XmlTransient
    @TableField(exist = false)
    private List<TCommand> initCommandList;
    private String railBackground;
    private String railProgressColor;
    private Double railBorderWidth;
    private String railBorderColor;
    private Double railBorderRoundCorner;
    private String sliderBackground;
    private Double sliderWidth;
    private Double sliderHeight;
    private Double sliderMarginTop;
    private Double sliderMarginBottom;
    private Double sliderMarginLeft;
    private Double sliderMarginRight;
    private String sliderBackgroundColor;
    private Double sliderBorderRadius;

    private String logicGraphData;

    @XmlTransient
    @TableField(exist = false)
    private Map logicGraph;

    @XmlTransient
    public List<TCommand> getInitCommandList() {
        return initCommandList;
    }

    @XmlTransient
    public List<TCommand> getSlideCommandList() {
        return slideCommandList;
    }

    @XmlTransient
    public String getType() {
        return type;
    }

    @XmlTransient
    public Boolean getKeepLast() {
        return keepLast;
    }

    @XmlTransient
    public Boolean getVertical() {
        return vertical;
    }

    @XmlTransient
    public Boolean getConditionShow() {
        return conditionShow;
    }

    @XmlTransient
    public Integer getPageId() {
        return pageId;
    }

    @XmlTransient
    public Integer getId() {
        return id;
    }


}
